#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

//void ret(int arr[10], int i) {
//	int x = 0;
//	for (; i < 9; i++) {
//		x = arr[i];
//		arr[i] = arr[i + 1];
//		arr[i + 1] = x;
//
//
//
//	}
//
//
//
//
//
//
//}
//
//
//
//
//
//
//
//
//int main() {
//	int arr[10] = {0};
//	int i = 0;
//	for (i = 0; i < 10; i++) {
//		scanf("%d", &arr[i]);
//	}
//	for (i = 0; i < 10; i++) {
//		while (1) {
//			if (arr[i] % 2 == 0) {
//				ret(arr,i);
//			}
//			else {
//				break;
//			}
//			int n = 0;
//			int m = 0;
//			for (n = i; n < 10; n++) {
//				if (arr[n] % 2 == 0) {
//					m++;
//				}
//			}
//			if (m==n-i) {
//				break;
//			}
//		}
//	}
//	for (i = 0; i < 10; i++) {
//		printf(" %d ", arr[i]);
//	}
//
//
//
//
//
//
//
//
//	return 0;
//}










int main() {
	int n = 0, m = 0;
	int a[1000];
	int b[1000];
	int i = 0;
	scanf("%d", &n);
	scanf("%d", &m);
	for (i = 0; i < n; i++) {
		scanf("%d", &a[i]);
	}
	for (i = 0; i < m; i++) {
		scanf("%d", &b[i]);
	}
	int x = 0;
	int nn = 0;
	int mm = 0;
	while (1) {
	
		if (a[nn] < b[mm]) {
			printf("%d ", a[nn]);
				if (nn < n) {
					nn++;
				}
				if(n==nn) {
					a[nn] = 30000;
				}
				x++;
		}
		else {
			printf("%d ", b[mm]);
			if (mm < m) {
				mm++;
			}
			if(m==mm) {
				b[mm] = 30000;
			}
			x++;
		}
		if (x == n + m) {
			break;

		}
		

	}










	return 0;
}




